The present invention relates to a service node, network, and method for pre-fetching for remote program installation, and more particularly, relates to improving remote installation performance of operating systems and at least one peripheral application in a computer cluster environment.
Known tools help administrators remotely install operating systems and at least one peripheral application for respective client computers. A known tool includes a server-client architecture, as shown in prior art FIG. 1. A service node 10 stores software packages required for installing operating systems and at least one peripheral application associated with the operating system, to a computing node 12. Each computing node 12 runs a program installation unit 14, when the computing node 12 needs to install an operating system and at least one peripheral application of the operating system. The program installation unit 14 sequentially issues requests according to a predetermined order to the service node 10 for software packages required for installing the operating system and at least one peripheral application. The service node 10 sequentially sends software packages to the computing node 12 based on the sequential requests.
The computing node 12 may be classified according to its intended purpose. The computing node 12 may include computing nodes for scientific computation, business analysis, and statistics, for example. The operating system and at least one peripheral application needed for installation may be similar for each type of computing node 12. Therefore, while there are different types of computing nodes, the software packages which need to be requested for installing operating systems and their peripheral applications may be similar.
Software packages may be similar for each type of computing node request sequence, thus there may be request sequence similarity, because the installation of software packages needs to be done based on the installation of other software packages. The request sequence is recorded in the program installation unit 14. The computing node 12 runs the program installation unit 14, when a computing node 12 issues a package request. The program installation unit 14 sequentially issues package requests to the service node 10 according to a fixed order.
In a large cluster, response speed of a service node 10 is critical. Response speed is critical, since faster response speed of the service node 10, means reduced operating system and peripheral application installation time.
In a service node 10, a service program unit 16 sends a required software package to a computing node 12 in response to a request from the program installation unit 14 of the computing node 12. A file system cache 18 may be used in the service node 10. The service program unit 16 first searches in the cache 18, hen the unit 16 needs a package to send to the computing node 12. The cache 18 improves package reading performance of the service node 10, since a package can be read from the cache 18 faster than reading the package from an external storage device 20, for example. Thus, the service program unit 16 can respond to a package request from a computing node 12 at a higher speed using a cache 18, than without a cache.
Only packages that have been read previously can be found in the cache 18. The package must first be read from the external storage device 20 into the cache 18 by the service program unit 16. The service program unit 16 can then read out from the cache 18 when a package is read for the first time.
Packages in the cache 18 may also overflow. Due to the limited size of the cache 18, some algorithms may need to shift some packages or files out from the cache 18. Therefore, when the packages that have been previously recorded in the cache 18 are read again, it is possible packages have overflowed. Therefore, the service program unit 16 has to re-read the packages from the external storage device 20.